<html>
<head><meta charset="utf-8"><title>Do people use IDEs to work on rustc? · t-compiler/help · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/index.html">t-compiler/help</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html">Do people use IDEs to work on rustc?</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="226600777"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226600777" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Mario Carneiro <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226600777">(Feb 17 2021 at 00:57)</a>:</h4>
<p>Do IDEs like rust-analyzer work on the rustc project? I'm currently using vscode to browse the codebase but I'm still too scared to actually try building it (I'm sure I will run out of RAM or something). But for folks who actually work on the compiler, I would guess that at least the basic stuff like go to definition would be really helpful, and I'm sort of assuming that even <code>cargo check</code> or whatever the x.py equivalent is is too slow and expensive to provide a useful IDE experience.</p>



<a name="226601067"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601067" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601067">(Feb 17 2021 at 01:01)</a>:</h4>
<p>I know several people use rust-analyzer with special settings for Rust (should be docs in the dev-guide).</p>



<a name="226601082"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601082" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601082">(Feb 17 2021 at 01:01)</a>:</h4>
<p>I haven't gotten around to setting it up yet; I just use Vim/Sublime Text and <code>./x.py check</code> and <code>./x.py build</code></p>



<a name="226601086"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601086" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601086">(Feb 17 2021 at 01:01)</a>:</h4>
<p>I use it without the special settings and just live with the errors lol</p>



<a name="226601143"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601143" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601143">(Feb 17 2021 at 01:02)</a>:</h4>
<p>Does RA work without special settings on <code>rust-lang/rust</code>?</p>



<a name="226601154"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601154" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601154">(Feb 17 2021 at 01:02)</a>:</h4>
<blockquote>
<p>I'm sure I will run out of RAM</p>
</blockquote>
<p>It doesn't hurt to try ;) the worst that happens is you have to cancel the build and rerun it with -j2 or something</p>



<a name="226601157"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601157" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601157">(Feb 17 2021 at 01:02)</a>:</h4>
<p>I thought you needed to configure it to use <code>./x.py check</code>.</p>



<a name="226601173"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601173" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601173">(Feb 17 2021 at 01:02)</a>:</h4>
<p>I only started using <code>./x.py check</code> a month or so ago and it's <em>amazing</em> compared to <code>./x.py build</code>.</p>



<a name="226601175"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601175" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601175">(Feb 17 2021 at 01:02)</a>:</h4>
<p><span class="user-mention" data-user-id="307537">@Camelid</span> not really, but it works well enough for go to definition and renaming things local to the current file</p>



<a name="226601186"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601186" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601186">(Feb 17 2021 at 01:02)</a>:</h4>
<p>Which is all I really use anyway</p>



<a name="226601223"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601223" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601223">(Feb 17 2021 at 01:03)</a>:</h4>
<p>Yeah I gotta get it set up, I'm really missing out <span aria-label="smile" class="emoji emoji-1f642" role="img" title="smile">:smile:</span></p>



<a name="226601309"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601309" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601309">(Feb 17 2021 at 01:04)</a>:</h4>
<blockquote>
<p>and I'm sort of assuming that even cargo check or whatever the x.py equivalent is is too slow and expensive to provide a useful IDE experience.</p>
</blockquote>
<p>I think it depends. <code>x.py check</code> is only a few seconds for changes to rustdoc. Not sure about rustc though.</p>



<a name="226601328"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601328" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601328">(Feb 17 2021 at 01:05)</a>:</h4>
<p>It depends which part of rustc. Anything after rustc_middle usually takes less than 15 seconds to check for me.</p>



<a name="226601335"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601335" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601335">(Feb 17 2021 at 01:05)</a>:</h4>
<p>It depends what you're editing. Probably editing <code>rustc_middle</code> will take on the order of minutes with <code>x.py check</code>, whereas <code>rustc_mir</code> will take seconds (hypothesizing).</p>



<a name="226601348"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601348" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601348">(Feb 17 2021 at 01:05)</a>:</h4>
<p>Nah, rustc_middle is about a minute if you're just checking</p>



<a name="226601350"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601350" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601350">(Feb 17 2021 at 01:05)</a>:</h4>
<p>Heh, we keep saying the same thing at the same time <span aria-label="laughing" class="emoji emoji-1f606" role="img" title="laughing">:laughing:</span></p>



<a name="226601597"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601597" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Mario Carneiro <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601597">(Feb 17 2021 at 01:08)</a>:</h4>
<p>Is there something special I have to set up to make this work? I have the <code>rust/</code> folder open in vscode and r-a didn't even try to do anything, which might be because I didn't open up one of the modules like <code>rustc_middle</code> in a separate folder or perhaps I need to do <code>x.py check</code> or something like that first</p>



<a name="226601747"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601747" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601747">(Feb 17 2021 at 01:10)</a>:</h4>
<p>What do you mean "didn't try to do anything"?</p>



<a name="226601775"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601775" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601775">(Feb 17 2021 at 01:10)</a>:</h4>
<p>Maybe try restarting the language server? I think you can do <code>Cmd/Ctrl-Shift-P</code> and then type in <code>language server</code> (at least for RLS, I would assume RA as well).</p>



<a name="226601793"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601793" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Mario Carneiro <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601793">(Feb 17 2021 at 01:11)</a>:</h4>
<p>It usually tries to run cargo check as soon as you open a rust project, but it didn't do that for rust</p>



<a name="226601805"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601805" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> asquared31415 <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601805">(Feb 17 2021 at 01:11)</a>:</h4>
<p>ra seems to be very sad about rustc source in my experience.  Some days I get autofill, some days nope.  It errors on things that compile fine, and it pretty much gives up a lot of the time.  I did have it configured to format it on save, and that seems to work consistently, no matter whether ra is cooperating.</p>



<a name="226601844"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601844" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601844">(Feb 17 2021 at 01:11)</a>:</h4>
<p><span class="user-mention" data-user-id="384759">@asquared31415</span> Have you tried <a href="https://rustc-dev-guide.rust-lang.org/building/suggested.html#configuring-rust-analyzer-for-rustc">https://rustc-dev-guide.rust-lang.org/building/suggested.html#configuring-rust-analyzer-for-rustc</a>?</p>



<a name="226601910"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226601910" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226601910">(Feb 17 2021 at 01:12)</a>:</h4>
<p>(As I said before, I haven't used RA, but I know some people have had success with it.)</p>



<a name="226602004"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226602004" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> asquared31415 <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226602004">(Feb 17 2021 at 01:13)</a>:</h4>
<p>Yep, I copied the entire first code block there, and the formatting works fine.  It just sometimes doesn't give me code suggestions (like the methods on a given variable/struct) and will sometimes error on things that end up compiling fine.</p>



<a name="226602052"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226602052" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> asquared31415 <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226602052">(Feb 17 2021 at 01:14)</a>:</h4>
<p>It quite literally seems to vary based on the day alone</p>



<a name="226602360"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226602360" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> asquared31415 <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226602360">(Feb 17 2021 at 01:19)</a>:</h4>
<p><a href="/user_uploads/4715/_VPN7UNiYH2_D6YAvYmP8mQa/image.png">image.png</a> Currently not very happy, despite the import being right there.  It does currently show autocompletion though!</p>
<div class="message_inline_image"><a href="/user_uploads/4715/_VPN7UNiYH2_D6YAvYmP8mQa/image.png" title="image.png"><img src="/user_uploads/4715/_VPN7UNiYH2_D6YAvYmP8mQa/image.png"></a></div>



<a name="226603260"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Do%20people%20use%20IDEs%20to%20work%20on%20rustc%3F/near/226603260" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Mario Carneiro <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Do.20people.20use.20IDEs.20to.20work.20on.20rustc.3F.html#226603260">(Feb 17 2021 at 01:34)</a>:</h4>
<p>Ah, looks like <code>x.py check</code> and then restarting vscode solves the problem: I now get go to definition and a lot of unresolved macro errors that I'm happy to ignore. Nice! <span aria-label="smiley" class="emoji emoji-1f603" role="img" title="smiley">:smiley:</span> (I'm not writing any code yet, just browsing, so the other stuff doesn't really bother me)</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>